1. Technical Field
Embodiments of the present invention relates to the field of restructuring network embedded systems and in particular without limitation to dividing a network of processing units into various sub-networks for diagnostics and maintenance purposes.
2. Description of Related Art
The implementation and embedding of electronic control units (ECU) or processing units is constantly growing in particular within the framework of automobile technology, industrial manufacturing technology as well as home entertainment or home appliances. In all these systems, a processing unit has to fulfill a distinct predefined function. Electronic systems featuring a plurality of such processing units are therefore denoted as networked embedded systems.
Complex electronic embedded systems have a large number of electronic control units that have to communicate with each other and/or have to exchange some data. For example, in today's high-end automobiles there exist up to about 100 processing units or electronic control units (ECU) that provide control of the vehicle functions. Typically, the plurality of electronic control units is arranged in various individual network branches, each of which providing a particular functionality for the vehicle control. Hence, each ECU in an automotive environment is designated and designed for a distinct purpose and features different requirements with respect to real-time behavior, data exchange rate, signal transmission and signal processing.
Therefore, various control units are arranged in sub-networks with respect to their signal processing and signal transmission properties. For example, real-time demanding processing units, like engine control, breaking system or body control are arranged e.g. in a static, or non-reconfigurable, sub-network making use of a real-time and highly reliable bus protocol. Other control units that are, e.g. related to passenger comfort or passenger convenience, like infotainment related control units, may be arranged in a different sub-network making use of a less reliable and low cost communication platform and/or bus protocol.
Typically, the various sub-networks feature a gateway unit or a gateway controller that provides interaction and communication between ECUs of different sub-networks. Hence, the gateway controllers connect the various sub-networks and regulate the communication transfer between the different bus systems.
In the automotive environment the overall architecture of the communication platform between the electronic control units features a heterogeneous and hierarchical structure. This is mainly due to continuous adaptive implementation of various communication technologies into existing electronic embedded systems. However, the heterogeneous and hierarchical structure is rather disadvantageous because the gateway controllers represent bottlenecks for the data transfer within the network and further represent single points of failures. For example, if a particular gateway controller is subject to failure, the entire heterogeneous network will break down. At least the functionality of an involved network branch will no longer be available.
FIG. 1 illustrates a prior art implementation of a networked embedded system 100, featuring a plurality of sub-networks 114, 116, 118, 120 and 140. For example, the sub-network 120 is implemented as a straight bus network and provides communication and data transfer to the processing units 122, 124, 126, 128 and 130. The gateway controller 102 provides access and data transfer between any of the processing units 122, . . . , 130 with other processing units of the networked embedded system 100. Furthermore, the sub-networks may feature a different topology and may exploit different bus protocols. Sub-network 114 is implemented by means of the ring-bus topology, sub-network 116 features a star topology and sub-networks 120 and 140 feature a straight bus topology.
For example sub-network 120 might be implemented as a control area network (CAN) bus system or local interconnect network bus system (LIN), sub-network 140 might be implemented as a CAN or any other real-time network and sub-network 116 might be realized as a Flexray bus system. Moreover, the ring-bus network 114 may provide communication for processing units 142, 144, 146, 148 that are related to multi-media applications. Therefore, the ring-bus 114 might be implemented as a media oriented system transport (MOST) bus system.
As can be seen from FIG. 1, the gateway controllers 102, 104, 106, 108, 110 represent bottlenecks for communication between any two or various processing units and hamper diagnosis as well as maintenance of the overall network. Most prior art implementations of automobile networked embedded systems feature a diagnostic port 112 that provides external access to any one of the sub-networks or to any of the processing units. Typically, each processing unit or ECU 122, . . . , 126, 132, . . . , 138, 142, . . . , 148 features a non-volatile memory that may e.g. be implemented as EEPROM or flash memory to store runtime programs, micro-code and some key data in a non-volatile way. However, in case of failure or availability of a software update, an updating or modification of the non-volatile memories of various dedicated or of all control units might be required. In particular due to the heterogeneous structure it is often difficult and very cumbersome to exactly allocate a failure of a distinct ECU or a gateway controller. Therefore, even a complete flashing of all memories of all ECUs or processing units might be required.
The diagnostic port 112 therefore serves as an access point to the embedded networked system and provides diagnosis as well as feeding of data streams into the various ECUs and sub-networks. Due to the complex nature of the heterogeneous and hierarchical networked embedded structure, such a complete flashing process requires an insufficient long time, because e.g. slow-speed buses connect high-speed buses and therefore represent indispensable bottlenecks for the flashing procedure. For example for a high-end vehicle, a complete flashing process may take 10 to 18 hours. Since these re-flashing processes have to be performed by trained personnel of vehicle service stations, such a re-flashing procedure is rather cost intensive and is also associated with an unacceptable downtime of the entire vehicle. Due to the continuous tendency of implementing more and more electronic components and electronically controlled systems in the automotive environment, the above described disadvantages may become more and more prominent and need to be solved.
Embodiments of the present invention therefore aims to provide an improved electronic embedded network that allows for an efficient and less time intensive diagnosis and flashing as well as restructuring of electronic control units and entire sub-networks of a network of processing units.